package com.hgyc.mom.tool.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.Max;
import jakarta.validation.constraints.Min;
import lombok.Data;

import java.io.Serializable;
import java.util.Map;

;

/**
 * <p>
 * 自定义报查询类
 * </p>
 *
 * @author fwj
 * @since 2025-04-29
 */
@Data
@Schema(name="自定义报查询对象", description="自定义报查询对象")
public class CustomReportParamVO implements Serializable {
    private static final long serialVersionUID = 1L;

    @Schema(description = "报表名称")
    private String reportName;

    @Schema(description = "报表编码")
    private String reportCode;

    @Schema(description = "报表查询参数值")
    private Map<String, Object> params;

    /**
     * 页码
     */
    @Schema(description = "页码，默认1", example = "1")
    @Min(value = 1, message = "页码最小为1")
    private Integer page;

    /**
     * 页面大小
     */
    @Schema(description = "每页数量，默认10", example = "10")
    @Min(value = 1, message = "每页数量最小为1")
    @Max(value = 100, message = "每页数量最大为100")
    private Integer pageSize;
}